package com.hzlj.position.locate.common.dto.position;


import com.hzlj.position.locate.common.dto.positionNewest.PositionNewestQueryResultDTO;
import lombok.Data;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 定位记录-分表(PositionNewest)查询结果返回DTO
 *
 * @author lifh
 * @date 2023-03-16 21:48:42
 */
@Data
@ToString
@Accessors(chain = true)
public class PositionFarCheckResultDTO {
    /**
     * 上一次-经度
     */
    private String longitude;
    /**
     * 上一次-纬度
     */
    private String latitude;
    /**
     * 上一次-位置描述
     */
    private String position;
    /**
     * 上一次-定位时间
     */
    private Date positionTime;
    /**
     * 距离上一次距离
     */
    private BigDecimal distance;
    /**
     * 是否太远
     */
    private boolean far = false;
    /**
     * 太远提示
     */
    private String farMsg;

    public PositionFarCheckResultDTO() {
    }

    public PositionFarCheckResultDTO(boolean far, String farMsg) {
        this.far = far;
        this.farMsg = farMsg;
    }

    public static PositionFarCheckResultDTO of(PositionNewestQueryResultDTO position) {
        PositionFarCheckResultDTO result = new PositionFarCheckResultDTO();
        return result.setLongitude(position.getLongitude())
                .setLatitude(position.getLatitude())
                .setPosition(position.getPosition())
                .setPositionTime(position.getPositionTime());
    }
}
